﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using PccCommonForC;

public partial class Manager_Authority_Authority : System.Web.UI.Page
{
    protected string pDel_mk = "", pUpd_mk = "";
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["AdminUserID"] == null)
        {
            Response.Write("<script language=javascript>alert('Time is out.');window.open('../Default.aspx','_top');</script>");
            return;
        }
        clsGetMenuAuth clsAuth = new clsGetMenuAuth(Session["AdminUserID"].ToString(), Session["AutID"].ToString(), Session["IsAdmin"].ToString(), Request.QueryString["CodeID"]);
        if (clsAuth.IsDeleteAuth() == true)
            pDel_mk = "Y";
        if (clsAuth.IsUpdateAuth() == true)
            pUpd_mk = "Y";
        if (!IsPostBack)
        {
            if (clsAuth.IsAddAuth() == false)
                btnAdd_Catalogue.Visible = false;
            else
                btnAdd_Catalogue.Visible = true;
            BindData();
        }

        EnableControl();
    }
    private void EnableControl()
    {
        if (Session["IsAdmin"] == "S")
        {
           // btnAdd_Catalogue.Visible = true;
        }
        else
        {
           // btnAdd_Catalogue.Visible = false;
            grv_Master.Columns[0].Visible = false;
            grv_Master.Columns[1].Visible = false;
        }
    }
    protected void btnAdd_Catalogue_Click(object sender, EventArgs e)
    {
        Response.Redirect("AddAuthority.aspx?CodeID=" + Request.QueryString["CodeID"]);
    }

    private void BindData()
    {
        PccMsg msg = new PccMsg();
        msg.CreateFirstNode("AutNm", txtTenChuDe.Text.Trim());

        clsWebShop cls = new clsWebShop();
        DataSet ds = null;
        ds = cls.Get_shr_AuthorityCondition(msg.GetXmlStr);
        grv_Master.DataSource = ds;
        grv_Master.DataBind();

    }
    protected void grv_Master_RowCreated(object sender, GridViewRowEventArgs e)
    {
       /* for (int i = 0; i < grv_Master.Rows.Count - 1; i++)
        {
            System.Web.UI.WebControls.WebControl myControl = grv_Master.Rows[i].Cells[1];
            myControl.Attributes.Add("onclick", "if(confirm('Delete???')) return true; return false;");
        }*/


    }
    protected void grv_Master_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.Header)
        {
            e.Row.Cells[0].ColumnSpan = 2;
            e.Row.Cells.RemoveAt(1);
        }
        else if (e.Row.RowType == DataControlRowType.DataRow)
        {
            e.Row.Cells[1].Attributes.Add("onclick", "if(confirm('Delete???')) return true; return false;");
            //Truong hop xoa
            if (pDel_mk != "Y")
            {
                e.Row.Cells[1].Text = "";
                e.Row.Cells[1].Attributes.Add("onclick", "javascript:return false;");
            }
            //Truong hop Update
            if (pUpd_mk != "Y")
            {
                e.Row.Cells[0].Text = "";
                e.Row.Cells[0].Attributes.Add("onclick", "javascript:return false;");
            }
        }
    }
    protected void btnSearch_Click(object sender, EventArgs e)
    {
        BindData();
    }
    protected void grv_Master_RowEditing(object sender, GridViewEditEventArgs e)
    {
        grv_Master.EditIndex = e.NewEditIndex;
        BindData();
    }
    protected void grv_Master_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        grv_Master.EditIndex = -1;
        BindData();
    }
    protected void grv_Master_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {

        CheckBox chkEditChose = (CheckBox)grv_Master.Rows[e.RowIndex].FindControl("chkEditChose");
        TextBox txtETenMn = (TextBox)grv_Master.Rows[e.RowIndex].FindControl("txtETenMn");
        TextBox txtEMenuURL = (TextBox)grv_Master.Rows[e.RowIndex].FindControl("txtEMenuURL");
        PccMsg msg = new PccMsg();

        msg.CreateFirstNode("AutID", grv_Master.DataKeys[e.RowIndex].Value.ToString());
        msg.CreateFirstNode("AutNm", txtETenMn.Text.ToString());
        msg.CreateFirstNode("Descript", txtEMenuURL.Text.ToString());
        msg.CreateFirstNode("Status", "");
        msg.CreateFirstNode("UpdID", "0");

        clsWebShop cls = new clsWebShop();
        cls.Upd_shr_Authority(msg.GetXmlStr.ToString());


        //  ClientScript.RegisterClientScriptBlock(Me.GetType, "", "<script>alert('Dữ liệu đã cập nhật thành công')</script>");
        grv_Master.EditIndex = -1;
        BindData();
    }
    protected void grv_Master_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        clsWebShop cls = new clsWebShop();
        PccMsg msg = new PccMsg();
        msg.CreateFirstNode("AutID", grv_Master.DataKeys[e.RowIndex].Value.ToString());
        cls.Del_shr_Authority(msg.GetXmlStr.ToString());
        ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script>alert('Dữ liệu đã cập nhật thành công')</script>");
        BindData();
    }
    protected void grv_Master_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        grv_Master.PageIndex = e.NewPageIndex;
        BindData();
    }
}
